iT邦幫忙

2025 iThome 鐵人賽

DAY 2
0
Mobile Development

從零開始學習 iOS系列 第 2

從零開始學習 iOS Day1 - Swift 基礎語法

  • 分享至 

  • xImage
  •  

第一天先來介紹Swift 的基本語法:變數、常數、型別、控制流程。

常數與變數

在開發 App 的過程中,經常需要存放各種資料。

例如:使用者輸入的暱稱、計算後的數值,甚至像「登入失敗次數上限」這種設定值,都需要被妥善保存。

在 Swift 中,資料的存放方式主要有兩種:

  • 變數 (var):裡面的值可以隨時修改,適合會隨時間或情境改變的資料。
  • 常數 (let):一旦設定後就無法再改變,適合那些固定、不應被更動的數值。
var name = "Hello World"
name = "Hello World !!!!!"

let max = 10
max = 0 //XCode編譯錯誤:Cannot assign to value: 'max' is a 'let' constant

什麼時候該用 var,什麼時候該用 let

  • 使用 var 的情境
    • 使用者名稱會變更
    • 計算過程中的中間結果
    • UI 畫面上的動態狀態(例如是否顯示 Loading 畫面)
  • 使用 let 的情境
    • API 的網址(例如 https://api.example.com
    • 設定檔中固定的參數(例如登入失敗上限)
    • 不會隨程式邏輯改變的資料

型別

Swift 是 強型別語言,每個值都會有型別。這能避免很多奇怪的錯誤。

常見型別有:

  • Int:用來表示整數,不會有小數點。
  • Double / Float:用來表示有小數點的數。
  • String:用來表示文字
  • Bool:用來表示布林值(True/False)
var age: Int = 30
var pi: Double = 3.14
var name: String = "Alice"
var isLogin: Bool = true

Swift 也能自動判斷型別:

var city = "Taipei"   // 自動判斷為 String

字串插值:透過 \() 來在字串中插入客製化資料

print("My name is \(name), and I am \(age) years old.")

output:

My name is Alice, and I am 30 years old.

控制流程

我們有時會根據條件來做選擇,或是重複執行某些動作。這就是 控制流程 (Control Flow)

if / else:如果有想在特定條件下執行。

let score = 85

if score >= 90 {
    print("score 大於 90")
} else if score >= 60 {
    print("score 小於 90 大於 60")
} else {
    print("score 小於 60")
}

output:

score 小於 90 大於 60

switch:當特定條件變複雜使用ifelse會難以閱讀,這時候就可以使用switch。

let text = "B"

switch text {
case "A":
    print("A")
case "B":
    print("B")
case "C":
    print("C")
default:
    print("Other")
}

output:

B

for迴圈:重複執行程式,並且能指定次數。

for i in 1...5 {
    print("Number \(i)")
}

output

Number 1
Number 2
Number 3
Number 4
Number 5

while迴圈:可以根據條件來決定是否繼續執行

var count = 3

while count > 0 {
    print("Countdown: \(count)")
    count -= 1
}

output

Countdown: 3
Countdown: 2
Countdown: 1

結語

第一天的學習先從最基本的語法開始。

  1. 變數與常數:用 varlet 來決定值是否能改變
  2. 型別:Swift 是強型別語言,常見的有 IntDoubleStringBool
  3. 控制流程:用 if/elseswitch 來做判斷,用 forwhile 來重複執行

這些就是 Swift 基礎語法。雖然這些語法看起來很簡單,但它們會不斷在後續的學習中出現。


上一篇
從零開始學習 iOS Day0 - 前言
下一篇
從零開始學習 iOS Day2 - Swift 函式與 Optional
系列文
從零開始學習 iOS3
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言